package com.yuntai.pms.model.param;


import java.io.Serializable;

import com.alibaba.fastjson.JSON;

/**
 * @ClassName: PageParam
 * @Description: 分页入参
 * @author 王勇琳
 * @date 2017年7月20日 下午3:14:47
 */
public class PageParam implements Serializable {
	private static final long serialVersionUID = 3938095740389970783L;
	/** 第几页，页码 */
	private Integer pageNumber;//
	/** 数据偏移量，从当前这个数目开始查询 */
	private Long offset = 0L;
	/** 每页多少条 */
	private Integer pageSize = 10;
	/** 正序（asc）还是倒序（desc） */
	private String order;
	/** 按哪个字段排序，例如：order by {field} */
	private String sort;
	
	public Integer getPageNumber() {
		return pageNumber;
	}
	public void setPageNumber(Integer pageNumber) {
		this.pageNumber = pageNumber;
	}
	public Long getOffset() {
		return offset;
	}
	public void setOffset(Long offset) {
		this.offset = offset;
	}

	public Integer getPageSize() {
		return pageSize;
	}

	public void setPageSize(Integer pageSize) {
		this.pageSize = pageSize;
	}

	public String getOrder() {
		return order;
	}
	public void setOrder(String order) {
		this.order = order;
	}
	public String getSort() {
		return sort;
	}
	public void setSort(String sort) {
		this.sort = sort;
	}

	@Override
	public String toString() {
		return JSON.toJSONString(this);
	}

	public static void initPageDto(PageParam pageDto) {
		if(pageDto != null) {
			if(pageDto.pageSize<=0 || pageDto.offset < 0L){
				pageDto.setPageSize(10);
				pageDto.setOffset(0L);
			}
		}
	}
}
